package com.itheima.behavior.service;

import com.itheima.model.behavior.vos.UserProfileVo;
import com.itheima.model.common.dtos.ResponseResult;

/**
 * 用户画像服务接口
 */
public interface UserProfileService {

    /**
     * 获取当前登录用户画像
     * @return 用户画像数据
     */
    ResponseResult getMyProfile();

    /**
     * 获取指定用户画像
     * @param userId 用户ID
     * @return 用户画像数据
     */
    ResponseResult getUserProfile(Integer userId);

    /**
     * 刷新当前登录用户画像
     * @return 更新结果
     */
    ResponseResult refreshMyProfile();

    /**
     * 更新用户画像（定时任务调用）
     * @param userId 用户ID
     * @return 更新结果
     */
    ResponseResult updateUserProfile(Integer userId);

    /**
     * 批量更新用户画像（定时任务调用）
     * @return 更新结果
     */
    ResponseResult batchUpdateUserProfiles();

    /**
     * 计算用户阅读等级
     * @param totalReadingTime 总阅读时长（分钟）
     * @return 等级信息
     */
    String calculateReadingLevel(Integer totalReadingTime);

    /**
     * 获取当前登录用户阅读偏好
     * @return 偏好数据
     */
    ResponseResult getMyPreferences();

    /**
     * 获取指定用户阅读偏好
     * @param userId 用户ID
     * @return 偏好数据
     */
    ResponseResult getUserPreferences(Integer userId);
}

